﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using YamlDotNet.Serialization;

namespace Merge
{
    public class Filter
    {

        [YamlMember(Alias = "规则名", ApplyNamingConventions = false)]
        public string Name { get; set; }


        [YamlMember(Alias = "已选", ApplyNamingConventions = false)]
        public bool Selected { get; set; }

        [YamlMember(Alias = "包含", ApplyNamingConventions = false)]
        public string[] IncludeKeywords { get; set; }

        [YamlMember(Alias = "允许包含", ApplyNamingConventions = false)]
        public string[] OptionalIncludeKeywords { get; set; }

        [YamlMember(Alias = "排除", ApplyNamingConventions = false)]
        public string[] ExcludeKeywords { get; set; }

        [YamlIgnore]
        public ISet<string> FinalExcludeKeywords { get; set; }

        [YamlMember(Alias = "匹配顺序", ApplyNamingConventions = false)]
        public int SortingNumber { get; set; }

        [YamlMember(Alias = "输出顺序", ApplyNamingConventions = false)]
        public int OutputOrder { get; set; }

    }
}
